import 'package:enterprise_v6_app/app/data/common/choice_bean.dart';

class StandardizationHealthMenuType implements ChoiceBean {
  StandardizationHealthMenuType(this.name);

  final String name;

  bool isChecked = false;

  static final threeSimultaneity = StandardizationHealthMenuType('职业健康三同时');
  static final equipment = StandardizationHealthMenuType('职业病防护用品');
  static final occupationalHealthArchives = StandardizationHealthMenuType('职业卫生档案');
  static final healthMonitoringRecords = StandardizationHealthMenuType('健康监护档案');
  static final toxicAndHarmfulWorkplaceMonitoring = StandardizationHealthMenuType('有毒有害工作场所监测');
  static final occupationalHealthTesting = StandardizationHealthMenuType('职业健康检测');
  static final protocol = StandardizationHealthMenuType('职业危害告知');
  static final mgmt = StandardizationHealthMenuType('职业危害申报');
  static List<StandardizationHealthMenuType> get all => [
        threeSimultaneity,
        equipment,
        occupationalHealthArchives,
        healthMonitoringRecords,
        toxicAndHarmfulWorkplaceMonitoring,
        occupationalHealthTesting,
        protocol,
        mgmt,
      ];

  @override
  String getId() => name;

  @override
  String getShowName() => name;

  @override
  bool getIsChecked() => isChecked;

  @override
  void setIsChecked(bool isChecked) {
    this.isChecked = isChecked;
  }

  String get path {
    switch (name) {
      case '三同时':
        return '/standard//threeSimultaneityInOccupationalHealth/getThreeSimultaneityThreePage';
      case '防护用品':
        return '/standard//threeSimultaneityInOccupationalHealth/getThreeSimultaneityEquipmentPage';
      case '健康监护档案':
        return '/standard//threeSimultaneityInOccupationalHealth/getHealthMonitoringRecordsPage';
      case '卫生档案':
        return '/standard//threeSimultaneityInOccupationalHealth/getOccupationalHealthArchivesPage';
      case '有毒有害工作场所监测':
        return '/standard//threeSimultaneityInOccupationalHealth/getToxicAndHarmfulWorkplaceMonitoringPage';
      case '职业健康检测':
        return '/standard//threeSimultaneityInOccupationalHealth/getOccupationalHealthTestingPage';
      case '职业危害告知':
        return '/standard//threeSimultaneityInOccupationalHealth/getOccupationalNotificationsPage';
      case '职业危害申报':
        return '/standard//threeSimultaneityInOccupationalHealth/getOccupationalDeclarationsPage';
      case '职业病危害监测与评价':
        return '/standard//threeSimultaneityInOccupationalHealth/getOccupationalDetectionEvaluationPage';
      default:
        return '';
    }
  }
}
